.TH std::floating_point 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::floating_point \- std::floating_point

.SH Synopsis
   Defined in header <concepts>
   template< class T >                                    \fI(since C++20)\fP
   concept floating_point = std::is_floating_point_v<T>;

   The concept floating_point<T> is satisfied if and only if T is a floating-point
   type.

.SH Example


// Run this code

 #include <concepts>
 #include <iostream>
 #include <type_traits>

 constexpr std::floating_point auto x2(std::floating_point auto x)
 {
     return x + x;
 }

 constexpr std::integral auto x2(std::integral auto x)
 {
     return x << 1;
 }

 int main()
 {
     constexpr auto d = x2(1.1);
     static_assert(std::is_same_v<double const, decltype(d)>);
     std::cout << d << '\\n';

     constexpr auto f = x2(2.2f);
     static_assert(std::is_same_v<float const, decltype(f)>);
     std::cout << f << '\\n';

     constexpr auto i = x2(444);
     static_assert(std::is_same_v<int const, decltype(i)>);
     std::cout << i << '\\n';
 }

.SH Output:

 2.2
 4.4
 888

.SH See also

   is_floating_point checks if a type is a floating-point type
   \fI(C++11)\fP           \fI(class template)\fP
